package com.hyb.hybmodulessearch.domain;

import cn.easyes.annotation.IndexField;
import cn.easyes.annotation.IndexId;
import cn.easyes.annotation.rely.Analyzer;
import cn.easyes.annotation.rely.FieldStrategy;
import cn.easyes.annotation.rely.FieldType;
import cn.easyes.annotation.rely.IdType;
import lombok.Data;

import java.util.Date;

@Data
public class TribeResponseVo {

    @IndexId(type = IdType.CUSTOMIZE)
    private Long id;

    @IndexField(strategy = FieldStrategy.NOT_EMPTY,fieldType = FieldType.KEYWORD)
    private String number;

    @IndexField(strategy = FieldStrategy.NOT_EMPTY,fieldType = FieldType.KEYWORD)
    private String name;


    @IndexField(strategy = FieldStrategy.NOT_EMPTY,fieldType = FieldType.KEYWORD)
    private Long fans;

    @IndexField(strategy = FieldStrategy.NOT_EMPTY,fieldType = FieldType.TEXT, analyzer = Analyzer.IK_SMART, searchAnalyzer = Analyzer.IK_MAX_WORD)
    private String des;

    @IndexField(strategy = FieldStrategy.NOT_EMPTY,fieldType = FieldType.KEYWORD)
    private String type;

    @IndexField(strategy = FieldStrategy.NOT_EMPTY,fieldType = FieldType.KEYWORD)
    private String level;

    @IndexField(strategy = FieldStrategy.NOT_EMPTY,fieldType = FieldType.KEYWORD)
    private String label;

    @IndexField(strategy = FieldStrategy.NOT_EMPTY,fieldType = FieldType.KEYWORD)
    private Long userCount;


    @IndexField(strategy = FieldStrategy.NOT_EMPTY,fieldType = FieldType.KEYWORD)
    private Long articleCount;

    @IndexField(strategy = FieldStrategy.NOT_EMPTY,fieldType = FieldType.KEYWORD)
    private String email;

    @IndexField(strategy = FieldStrategy.NOT_EMPTY,fieldType = FieldType.KEYWORD)
    private String avatarUrl;

    @IndexField(strategy = FieldStrategy.NOT_EMPTY,fieldType = FieldType.DATE,dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    @IndexField(strategy = FieldStrategy.NOT_EMPTY,fieldType = FieldType.DATE,dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
}
